5c6798bca1eeea8a8c478b8bf66e4f4e66e19cdf,community/kernel/src/test/java/org/neo4j/adversaries/fs/AdversarialFileChannel.java,AdversarialFileChannel,read,#ByteBuffer[]#number#number#,107
Before Change
@Override
public long read( ByteBuffer[] dsts, int offset, int length ) throws IOException
{
adversary.injectFailure( IOException.class );
return super.read( dsts, offset, length );
}
After Change
@Override
public long read( ByteBuffer[] dsts, int offset, int length ) throws IOException
{
if ( adversary.injectFailureOrMischief( IOException.class ) )
{
ByteBuffer lastBuf = dsts[dsts.length - 1];
int oldLimit = mischiefLimit( lastBuf );
long read = super.read( dsts, offset, length );
lastBuf.limit( oldLimit );
return read;
}
return super.read( dsts, offset, length );
}